package org.example.analysis.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.example.analysis.model.entity.JavaClassInfo;

import java.util.List;

/**
 * Java类信息Mapper
 */
public interface JavaClassInfoMapper extends BaseMapper<JavaClassInfo> {
    void insertBatch(@Param("list") List<JavaClassInfo> classInfoList);

    void deleteByProjectName(String projectName);

    List<JavaClassInfo> getByProjectName(String projectName);

    void deleteRefreshableByProjectName(@Param("projectName") String projectName);

    boolean existsByProjectNameAndClassNameAndPackageName(@Param("projectName") String projectName,
                                                          @Param("className") String className,
                                                          @Param("packageName") String packageName);
}